查看原文
其他

对话元道:通证经济需要“互链网”,“互链网”需要细腰

2018-01-24 孟岩 区块链大本营

本文大概

5000

读完共需

20

分钟


【作者按】在之前与元道的几次对话中,通证经济的逻辑和意义已经显现。但是目前能够支撑通证经济的技术基础设施还不存在。因此在这一次对话中,我们围绕通证的技术基础设施展开技术对话。


万链竞发时代的区块链治理

要靠“多利益关联方”模式


孟岩(以下简称孟):元道先生,我们的几篇对话发表之后,在圈子里引起的反响超出我的预期,尤其是我们对“通证”的解读,得到了很多业内人士的认可。不过也有不少人认为我们讨论的通证经济过于理想化,“还早着呢”,政策、人心、技术都远远达不到,搁在今天讲属于瞎操心,您怎么看?


元道(以下简称元):政策、人心、技术,这三个因素要分开看。


政策,你在哪个国家,就要严格遵守哪个国家的政策,我对这一点的态度从来是不折不扣的。但今天的世界各国,在经历了最近二三十年数轮技术变革的冲刷之后,对于新技术革命的态度普遍是开放的,各国虽然有各自的政策考量,但大方向都要顺应甚至去引领新技术趋势。个别节点一旦打通,政策的变化会非常快。这是个总体判断。


人心,无非是指人们对现有的社会协作方式的一种惰性,这个东西我完全不担心。通证经济一旦推起来,对人的激励和改变会是摧枯拉朽、一日千里的。


技术,这反而是今天最需要重视的制约因素。坦率的说,别看今天区块链里热热闹闹,万链齐飞,但基本上是各说各话。每条链都相当于《三体》里从大宇宙里偷出来的一个小宇宙,拼命从大宇宙里薅质量和能量,然后躲进小楼成一统,彼此老死不相往来。但是通证之通,不正在于畅通无阻吗?如果下面的区块链是这样一个局面,通证就通不起来了。这确实是我比较担心的问题。


:这是一个挺反讽的事,以“去中心化”为标签的区块链,却家家都以自己的 “链” 为宇宙中心,真的要把这条链上的通证兑换为那条链上的通证,反而要通过中心化的交易所来进行。链内的基础设施是去中心化的,但链与链之间是不协作的。这种局面怎么破?


:我先来谈谈治理层面的思路,稍后再来谈技术。


治理层面,就是要建立 “多利益关联方(multi-stakeholder)” 的观念,建立从多利益关联方中产生共识的机制。


多利益关联方这个概念是我们中国人非常陌生的。我们中国传统的人际关系,是比较简单的非黑即白的关系,要么是自己人,要么是外人。我们这些从计划经济时代走过来的人都知道,在原来那个社会结构里,你做任何事情都想着拉关系找人,其目的就是为了让对方在心里把你划为“自己人”。自己人跟外人的待遇那是截然不同的。你到大医院看过病吗?找不找人,那待遇能一样吗?这个咱们都很清楚。


把这种心态带到区块链里来,那就是竞争、争霸、一统天下,我现在已经看到一些区块链项目在谈区块链巨头的问题。在他们的心中,解决刚才你说的问题,思路很简单,把别的小宇宙都消灭,你们都到我的宇宙来,那不就和谐了?十多年前有一部电影叫《英雄》,表达的就是这个心态,你是不是想要和平?秦始皇说我也想啊,只要我一统天下,你先让我把不服的都杀掉,然后天下不就和平了吗?不就不杀了吗?


但我们现在正在为通证经济构造基础设施,我们一定不要走这个老路。通证如果再搞成寡头争霸,分成几个体系,相互倾轧,那就真是通证之殇了。


所以我们今天要强调 “多利益关联方” 这个概念。这个概念是我在参加 IETF(国际互联网工程任务组) 组织会议的时候才深刻感受到的。来自几十个国家的代表在一起商讨互联网协议和基础设施,各自都代表不同的利益主体,但又有着共同的目标。如何达成共识?既不搞一言堂,也不搞简单的和稀泥的投票制,而是一套自下而上提议、靠代码说话的共识机制。互联网上各种伟大的协议,包括 IP、TCP 这些当代人类文明的基石性协议,都是这么搞出来的。


:这个我很感兴趣,能否具体解释一下?


:说起来也很简单,IETF 多利益关联方共识的机制,全都体现在他们的座右铭里了,这段座右铭是有麻省理工的 Dave Clark 创作的,英文是这样的:


"We reject kings, presidents and voting. We believe in rough consensus and running code."


什么意思呢?就是说我们 IETF 达成一致不靠权威,也不靠投票。你对于解决这个问题有什么好的想法,来来来,把代码写出来,运行得好,我们大家就接受。至于达成的共识,也是 rough consensus,什么意思呢?不是说我们推出的标准很粗糙,到处是毛病,而是说我们的共识是原则性的,抓大放小,既保证我们在互联网上互联互通,又给每一个个体以相当的自主权和创新空间。


我认为这套治理思想应该被区块链、通证时代所借鉴,而且我们应该做得更好,特别是我们中国人应该在其中发挥更大更好的作用。


万链齐发,这个是区块链发展到今天这个阶段,必然会出现的一个局面。问题是将来怎么收敛?是大鱼吃小鱼、小鱼吃虾米式的丛林法则,还是不同的链彼此作为多利益关联方,互通互链,相互协作?我相信一定是后者。在通证时代,链与链之间不仅仅是相互连接的问题,还需要彼此互链,只有如此,通证才能够带着信任、价值和人类共识走遍天下


通证经济需要“互链网”

:“互链” 这个词很有意思,我们能说通证经济所需要的基础设施,不再是今天的互联网,而是未来的 “互链网” 吗?


:完全应该这样说。今天我们说的互联网,主要是信息互联网。所以互联网上所有的企业,归根结底,都是媒体。信息互联非常重要,但是当我们做价值互联的时候,今天的互联网基础设施就显得薄弱了。我们用通证来承载价值和共识,而通证的流转必须是带着信任走的。信息与价值的传递,最大的差别是什么?是“互联”与“互链” 的差别。我们知道,写笔记你是可以信笔由缰的,但是复式记账法,那是要对账的。就像我们熟悉的增值税发票,上游企业的增值部分肯定要反应在下游企业的成本上,这叫环环相扣。环环相扣是为链,信任和价值是要链接在一起,是环环相扣,要咬合在一起的。这样人家才信嘛。比特币技术你很熟悉,UTXO 不就是一种环环相扣的记账法吗?


:是的,UTXO 是比特币的一大技术特色,所有的交易都需要输入和输出,输入必须等于输出,每一个用户所拥有的比特币,不是他账户中的一个数字,而是他所有未花销的交易输出之和。从创世纪区块至今,环环相扣。


:但是这条链只是在比特币内部,它能延展出去吗?甚至能否畅行天下?这是关键问题。我们今天探讨区块链,链与链之间的互链,这是治理的制高点,也是技术的制高点。一旦这个目标实现了,那么就会出现“人人互链无边界,各国链网有主权” 的理想状态。我们通证派的人,应当为这个目标努力。


:“人人互链无国界,各国链网有主权”,这个提法很新颖。您能解释一下吗?


:所谓“人人互链无边界”,是指在通证经济的时代,每一个个体,包括人和组织,都可以发行自己的通证,创造自己丰富多彩的通证应用。而这些通证和通证应用,应该是互相链接在一起的,价值与信任环环相扣,而且不受技术边界和地区边界的阻滞。也就是说,通证和通证应用的基础设施应该是一个全球价值网络,我叫它 “互链网”。所谓的去中心化,其实就是在这个互链网上每一个个体之间彼此相互信任,信任这件事情去中心了,不用再像以前那样依靠某个大家共同信任的中心来协调行动了。


但不要把这种去中心化理解为行政上和管理上的去中心化,更不要理解为无政府主义。事实上,越是这样的互链网,越需要监管。“各国链网有主权”,是指每一个国家都可以用自己的方式监管境内的互链网,包括对 KYC 的具体规范和执行,对通证发行权利、范围和通证应用性质的监管,打击犯罪,强化金融监管,这些都是非常必要的。通证经济和互链网,不但不会阻碍这种监管的主权,而且还会大大提升监管的效率和准确度。


互链网的“细腰”和通证应用的“调色板”

:您说得很好,但我们还是回归现实,这些美好的设想,总还是需要技术来支撑的吧。您和我都是技术出身,如果只谈这些美好理想,不谈具体实现路径,那不就成空谈了。


下面我们来说说技术。


从技术上看,目前各链自成体系,跨链技术远未成熟,应该是目前的现状。互联网之所以有今天,其实有一个关键的协议,就是 IP 协议。IP 协议经常被人尊称为 “互联网的细腰”。因为在 IP 协议之上,有丰富多彩的传输层、应用层协议,而在其之下,也有丰富的链路层、物理层协议和实现。维独在互联层,IP 协议一夫当关,莫与争锋。因为有了 IP 的存在,上层应用多姿多彩,下层变化完全隔离。比如网络技术的发展,物理层可以是电缆、光纤,而数据链路层呢,ATM、PDH、SDH 已经逐渐式微,OTN 光网络逐渐成为主流,但是由于IP协议的存在,使得上层互联网应用可以完全忽略下面网络技术和物理设施演进变化,一路向前发展。


但是在今天的区块链世界里,并不存在这样一个细腰。现有的区块链从应用、智能合约、共同帐本、共识网络绑死,每个链形成了独立的垂直的封闭体系,当一个应用绑死在一个链上的时候,难以采用新技术,或者带着原有数据和资产迁移到新的链上,互链成为空谈。这个技术难题怎么破?


:说到这里,那我就得向你介绍一个技术高人,他领导一个分布在全球的技术团队,已经找到了破解这个技术难题的方案。不过他本人在硅谷纵横二十余年,段位极高,但为人又谦逊低调,因此我在这里隐去他的真名,称呼他为 “方块夫子 Dr. Block”,保留一点神秘感。他正在研发的项目称为 Pallet,就是调色板。请他自己介绍一下。


方块夫子(以下简称 “方”):两位好,很高兴参加这个对话。


:夫子好!元道先生刚才介绍说您在开发一个叫做 Pallet 的项目。我们这个访谈不搞项目宣传,只谈技术。能否介绍一下 Pallet 解决了什么技术问题?


:Pallet是一套互链协议,价值交换需要互链,承诺的兑现需要约束,权益的转移需要一个标准化的协议。Pallet 就是干这件事。刚才你也提到,互联网能够有今天,有赖于 IP 协议这个细腰。Pallet 就是希望成为互链网上的 IP 协议在 Pallet 之下,百链竞发,争奇斗艳,在 Pallet 之上,人人互链无边界,而 Pallet 作为一个协议,令多利益关联方达成共识,所有的链都可以参与其中。


:Pallet 本身是一条链吗?


Pallet 不是区块链,而是一套协议。我们当然会为这套协议开发一个实现,但是这套协议会开放出来,别人也可以开发他们的实现。只要遵循这套协议,就可以基于它写跨链的智能合约,以及 Dapp。对于用户来说,Pallet 之下的百链万链,都成为他发行自己通证、实现自己通证应用的组件。所以我们才称这个协议叫 Pallet,调色板。用户可以基于这个调色板来绘制自己的通证图画。


:我还是不太理解。跨链这件事情其实不新鲜,包括早期 Blockstream 提出来的侧链技术,在比特币和以太坊两大公链之间充当传令兵的 BTC-relay,到现在比较火的 RootStock、Polkadot,都是以跨链通讯为卖点的。但似乎都距离我们刚才所憧憬的互链网 IP 细腰有差距。Pallet 会有什么不同?


:我们看  IP 协议解决了什么问题?首先是它解决了不同网络之间相互通讯的问题,其次,是它对其上的协议提供了一个统一的抽象。


你提到的这几种跨链技术,在我看来都是解决方案的层面,而不是协议层面。解决方案,就是我有一个问题,我想个可行的办法去解决这个问题,然后开庆功会。协议的思维方式不同,协议是要为着一个目标,在多利益关联方之间,制定一套游戏规则,只要遵守这套游戏规则,大家就可以互通共赢。


我不妨点评一下侧链技术,其实本质上就是主侧链之间双向锚定,相互信任。主链要向侧链转移资产时,通知侧链自己已经将一部分主链资产锁定,而侧链可以去检查主链资产的锁定状态,然后在自己的链上发行等值的侧链资产。这个过程宏观来看就是完成了资产的跨链转移。所以你看,这是一套区块链层面的技术,需要主侧链彼此了解,相互配合。


有什么问题呢?


第一,作为链间通讯解决方案,它规模性不行。两条链的时候很简单,一主一侧就可以了,如果是几十条链几百条链,怎么办?那只有围着一条中心主链来转。那这相当于什么呢?相当于每一个中心主链跟其侧链之间又打造了一个大一点的小宇宙,但是跟外界还是隔绝的。


第二,它不能够对上层应用提供强有力的抽象。你在这套体系里做出来的智能合约和 Dapp,还是局限在具体链上的。你的智能合约能运行在不同的链上,甚至同时运行在多条链上吗?恐怕是不行的。


这跟我们刚才所说的互链网的愿景,恐怕想去甚远吧。


根本问题在哪里?我认为,链间互链的问题,根本就不应该是在链这个层面解决,它必须高于链这个层次,要把下层的链当操作系统 API 来调度。


:那您的 Pallet 怎么设计的?


:Pallet 就是按照这个思路来设计的。Pallet 的实现本身不是链,而是一套基于密码学、分布式的服务。


Pallet 协议借鉴了英美法系陪审员共识制度。一个应用层来的智能合约,送到 Pallet 层的时候,会有一个律师节点负责执行。然而它不能独断乾纲,需要陪审团节点为它背书。所以它先执行一遍智能合约,然后把代码和输出交给陪审团,每个陪审团节点各自独立执行一遍,确认输出正确,然后签名支持。律师节点得到足够的陪审员签名支持之后,就可以去找相应的下层公链来执行智能合约所要求的动作。这样一来,Pallet 相当于作为一个“百链之上”的公共智能合约执行层,就不但消除了各链智能合约的差异性,而且可以让本来没有智能合约的链,比如比特币,也可以在智能合约的支配下行动。比如说,使用Pallet可以在比特币链或其它没有智能合约的链上像ERC20一样快速定义和发行token。不但如此,这套机制可以让一个智能合约同时驱动多个下层链。所以我们称之为协议。


:我对于这里的共识达成算法有疑问。您这个算法的关键,是多数陪审员独立验证智能合约的执行状态,并且签名背书,让律师节点获得足够多的支持去调用下层链功能。但如果律师节点是恶意的,而他又刻意挑选一批恶意的陪审员节点,那么他们就可以曲解用户的智能合约了。您怎样确保多数陪审员节点是正直的呢?


:很好的问题。这确实是这套协议设计中的一个要点。事实上,但是每一个智能合约执行时,会随机临时抽选一部分陪审员节点组成临时陪审团。因为是随机选择,所以可以在较少的节点基础上实现充分随机性。同时 Pallet 协议还采用押金惩罚机制保证陪审员不作恶,一起防范 Sybil 攻击,保证充分去中心化。


:那么我们的智能合约怎么开发?怎么部署?


:Pallet 智能合约可以使用各种主流语言开发,C/C++、Python、JavaScript、Solidity,都可以,开发之后用对应的编译器便以为 LLVM 的 bitcode,然后若有必要,再进一步翻译,跑在相应链的智能合约虚拟机上。


Pallet可以挂在多个链上,避免网络拥塞,用户选择性大,使得各种DAPP应用可以部署在不同的链上,可以形成良性竞争,更多用户可以参 与,开发者在开发应用时可以根据业务需求更灵活的选择已有的链,或者方便的从已有经部署的链上迁移到更好更新的链上,使得已有的应 用生态可以突破原来部署的链自身架构局限、性能局限或者功能局限。


:非常有意思。这个项目背后的开发者是什么人?


:Pallet项目是国际化项目,从硅谷发起,发展到东京、香港、奥克兰、台北、北京都有贡献者和参与者,大量国际性大学参与。元道先生自始至终参与其中。


:是的,我的观点是,区块链的治理,关键在于建立一个 Meta 层,也就是 “元层”。这个层就是 Pallet 努力实现的、互链层的 IP 协议。


:好的,我会更进一步思考。谢谢两位。




更多区块链技术、应用新闻,敬请关注



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存